package org.yoki.edu.bg.radius.web.api.impl.rest.client.assembler;

import org.yoki.edu.bg.radius.core.client.domain.Client;
import org.yoki.edu.bg.radius.web.api.client.command.ClientCreateCommand;
import org.yoki.edu.bg.radius.web.api.client.command.ClientPageCommand;
import org.yoki.edu.bg.radius.web.api.client.command.ClientUpdateCommand;
import org.yoki.edu.bg.radius.web.api.client.command.ClientUpdateServerCommand;

import java.util.Date;

/**
 * 代码生成器自动生成
 * Date:2018-1-29 17:48:47
 *
 * @author
 */
public class ClientAssembler {

    public static Client toClient(ClientCreateCommand command) {
        Client entity = new Client();
        /** 名称*/
        entity.setName(command.getName());
        /** 服务端ID */
        entity.setServerId(command.getServerId());
        /** IP地址*/
        entity.setIpAddr(command.getIpAddr());
        /** IPV6地址*/
        entity.setIpv6Addr(command.getIpv6Addr());
        /** 密钥*/
        entity.setSecret(command.getSecret());
        /** 是否需要消息认证*/
        entity.setMsgAuthemticator(command.getMsgAuthemticator());
        /** 是否正常，是：1(true)，否：0(false)*/
        entity.setIsWork(command.getIsWork());
        Date currentDate = new Date();
        entity.setCreateDate(currentDate);
        entity.setUpdateDate(currentDate);
        return entity;
    }

    public static Client toClient(ClientUpdateCommand command) {
        Client entity = new Client();
        /** 主键id*/
        entity.setId(command.getId());
        /** 名称*/
        entity.setName(command.getName());
        /** 服务端ID */
        entity.setServerId(command.getServerId());
        /** IP地址*/
        entity.setIpAddr(command.getIpAddr());
        /** IPV6地址*/
        entity.setIpv6Addr(command.getIpv6Addr());
        /** 密钥*/
        entity.setSecret(command.getSecret());
        /** 是否需要消息认证*/
        entity.setMsgAuthemticator(command.getMsgAuthemticator());
        /** 是否正常，是：1(true)，否：0(false)*/
        entity.setIsWork(command.getIsWork());
        Date currentDate = new Date();
        entity.setUpdateDate(currentDate);
        return entity;
    }

    public static Client toClient(ClientUpdateServerCommand command) {
        Client entity = new Client();
        /** 主键id*/
        entity.setId(command.getId());
        /** 服务端ID */
        entity.setServerId(command.getServerId());
        Date currentDate = new Date();
        entity.setUpdateDate(currentDate);
        return entity;
    }

    public static Client toClient(ClientPageCommand command) {
        Client entity = new Client();
        /** 操作人员Id*/
        entity.setOperatorId(command.getOperatorId());
        /** 名称*/
        entity.setName(command.getName());
        /** 服务端ID */
        entity.setServerId(command.getServerId());
        /** IP地址*/
        entity.setIpAddr(command.getIpAddr());
        /** IPV6地址*/
        entity.setIpv6Addr(command.getIpv6Addr());
        /** 是否正常，是：1(true)，否：0(false)*/
        entity.setIsWork(command.getIsWork());
        return entity;
    }


}